/*
 * IndexadorTweet.h


 *
 *      Author: carlos
 */

#ifndef INDEXADORTWEET_H_
#define INDEXADORTWEET_H_
#include "../../logical_layer/entities/Twit.h"
#include "IStructureBTreeSecondaryIndexImpl.h"
#include "../../logical_layer/entities/SimpleSecondaryIndex.h"
#include "../hash/HashExtensible.h"
#include "../../logical_layer/entities/Rss.h"
class IndexadorTwit {
public:
	IndexadorTwit(HashExtensible* hash, IStrutureBTreeImpl* indiceFechaAsc,
			IStrutureBTreeImpl* indiceFechaDesc,
			IStrutureBTreeImpl* indiceAutor);
	void add(Twit* twit);
	void deleteRecord(int identificador);
	void deleteRecordFechaExacta(int fecha);
	void deleteRecordMayorFecha(int fecha);
	void deleteRecordMenorFecha(int fecha);
	virtual ~IndexadorTwit();
	void exportar();
private:

	void eliminarSimpleSecondayIndex(SimpleSecondaryIndex* ientidad,int aniomesdia);
	HashExtensible* hash;
	IStrutureBTreeImpl* indiceAutor;
	IStrutureBTreeImpl* indiceFechaAsc;
	IStrutureBTreeImpl* indiceFechaDesc;
};

#endif /* INDEXADORTWEET_H_ */
